package com.victor.service;

import java.util.List;

import com.victor.entity.activity_tuikuan.ActJifen;
import com.victor.entity.activity_tuikuan.ActManjian;
import com.victor.entity.activity_tuikuan.ActMiaosha;
import com.victor.entity.activity_tuikuan.ActTuangou;
import com.victor.entity.activity_tuikuan.TuikuanSetup;
import com.victor.entity.partner.PartnerType;
import com.victor.entity.partner.PartnerUser;
import com.victor.entity.partner.food.FoodMeal;
import com.victor.entity.partner.food.FoodMealDayUse;
import com.victor.entity.partner.food.FoodMealKeshou;
import com.victor.entity.partner.food.FoodMealPhoto;
import com.victor.entity.partner.happy.HappyTheme;
import com.victor.entity.partner.happy.HappyThemeKeshou;
import com.victor.entity.partner.happy.HappyThemePhoto;
import com.victor.entity.partner.happy.HappyThemeTime;
import com.victor.entity.partner.hotel.HotelRoom;
import com.victor.entity.partner.hotel.HotelRoomExplain;
import com.victor.entity.partner.hotel.HotelRoomKeshou;
import com.victor.entity.partner.hotel.HotelRoomLabel;
import com.victor.entity.partner.hotel.HotelRoomPhoto;
import com.victor.entity.receive.AppGetFoodEntity;
import com.victor.entity.receive.AppGetHappyEntity;
import com.victor.entity.receive.AppGetHotelEntity;

public interface PartnerService {

	/**
	 * 获取商户类别
	 * 
	 * @param t_type
	 * @return
	 */
	public List<PartnerType> getPartnerType(String t_type);

	/**
	 * 获取合作伙伴商家
	 * 
	 * @param type           用户类型(1.酒店.2.美食. 3娱乐)
	 * @param name           商户名
	 * @param brand          商家品牌
	 * @param account        账号
	 * @param t_id           商户类别id
	 * @param business_state 营业状态（0营业中 1歇业中 2闭店）
	 * @return
	 */
	public List<PartnerUser> getPartnerUsers(String type, String name, String brand, String account, String t_id, String business_state);

	/**
	 * 获取商家详情
	 * 
	 * @param partnerUserid
	 * @return
	 */
	public PartnerUser getPartnerUserXQ(String partnerUserid);

	/**
	 * 批量删除
	 * 
	 * @param puids
	 * @return
	 */
	public boolean batchDeletePartnerUser(int[] puids);

	/**
	 * 批量冻结
	 * 
	 */
	public boolean batchFrozenPartnerUser(int[] puids);

	/**
	 * 将房间信息添加入数据库并返回酒店房间id
	 * 
	 * @param hotelRoom
	 * @return
	 */
	public int addHotelRoom(HotelRoom hotelRoom);

	/**
	 * 添加标签数据
	 * 
	 * @param hotelRoomLabel
	 */
	public int addHotelRoomLabel(HotelRoomLabel hotelRoomLabel);

	/**
	 * 添加预定说明
	 * 
	 * @param hotelRoomExplain
	 */
	public int addHotelRoomExplain(HotelRoomExplain hotelRoomExplain);

	/**
	 * 添加房间介绍图片
	 * 
	 * @param hotelRoomPhoto
	 * @return
	 */
	public int addHotelRoomPhoto(HotelRoomPhoto hotelRoomPhoto);

	/**
	 * 退款设置信息
	 * 
	 * @param tuikuanSetup
	 */
	public int addTuikuanSetup(TuikuanSetup tuikuanSetup);

	/**
	 * 添加团购活动
	 * 
	 * @param actTuangou
	 */
	public int addActTuangou(ActTuangou actTuangou);

	/**
	 * 添加秒杀活动
	 * 
	 * @param actMiaosha
	 * @return
	 */
	public int addActMiaosha(ActMiaosha actMiaosha);

	/**
	 * 满减活动
	 * 
	 * @param actManjian
	 */
	public int addActManjian(ActManjian actManjian);

	/**
	 * 积分兑换
	 * 
	 * @param actJifen
	 */
	public int addActJifen(ActJifen actJifen);

	/**
	 * 将美食套餐添加入数据库并返回id
	 * 
	 * @param foodMeal
	 * @return
	 */
	public int addFoodMeal(FoodMeal foodMeal);

	/**
	 * 添加每日可售数量
	 * 
	 * @param foodMealDayUse
	 */
	public int addFoodMealDayUse(FoodMealDayUse foodMealDayUse);

	/**
	 * 添加图片
	 * 
	 * @param foodMealPhoto
	 */
	public int addFoodMealPhoto(FoodMealPhoto foodMealPhoto);

	/**
	 * 将娱乐项目添加入数据库并返回id
	 * 
	 * @param happyTheme
	 * @return
	 */
	public int addHappyTheme(HappyTheme happyTheme);

	/**
	 * 添加娱乐项目图片
	 * 
	 * @param happyThemePhoto
	 */
	public int addHappyThemePhoto(HappyThemePhoto happyThemePhoto);

	/**
	 * 添加时间
	 * 
	 * @param happyTheme
	 */
	public int addHappyThemeTime(HappyThemeTime happyThemeTime);

	/**
	 * 上下架房间
	 * 
	 * @param hotelRoomid
	 * @param r_upordowntype
	 * @return
	 */
	public boolean UpOrDownHotelRoom(int hotelRoomid, String r_upordowntype);

	/**
	 * 筛选（根据上下架筛选）--p_id商家id r_upordowntype --0 上架 1下架
	 * 
	 * @param p_id
	 * @param r_upordowntype
	 * @return
	 */
	public List<HotelRoom> shaixuanUporDown(String p_id, String r_upordowntype);

	/**
	 * 获取房间详情---传房间id
	 * 
	 * @param r_id
	 * @return
	 */
	public HotelRoom getHotelRoomXQ(String r_id);

	/**
	 * 查询当日是否已经设置可售
	 * 
	 * @param date
	 * @return
	 */
	public HotelRoomKeshou getTodayIsSetup(String date, String r_id);

	/**
	 * 删除当日设置
	 * 
	 * @param k_id
	 */
	public int deleteTodayHotelRoomKeshous(Integer k_id);

	/**
	 * 添加新的设置
	 * 
	 * @param hotelRoomKeshou
	 */
	public int addHotelRoomKeshous(HotelRoomKeshou hotelRoomKeshou);

	/**
	 * 删除房间信息
	 * 
	 * @param r_id
	 * @return
	 */
	public boolean delHotelRoom(Integer r_id);

	/**
	 * 修改房间信息
	 * 
	 * @param hotelRoom
	 * @return
	 */
	public boolean updHotelRoom(HotelRoom hotelRoom);

	/**
	 * 删除宾馆图片
	 * 
	 * @param photo_id
	 * @return
	 */
	public boolean delHotelRoomPhoto(String photo_id);

	/**
	 * 上下架美食商品 upordowntype 0 上架 1下架
	 * 
	 * @param foodMealid
	 * @param upordowntype
	 * @return
	 */
	public boolean upOrDownFoodMeal(int foodMealid, String upordowntype);

	/** app */
	/**
	 * 查询宾馆列表
	 * 
	 * @param t_id          商户类别表id
	 * @param position_city 市搜索
	 * @param position_area 区搜索
	 * @param h_price_start 价钱搜索开始价格
	 * @param h_price_end   价钱搜索结束价格
	 * @param h_star        星级搜索
	 * @param search        搜索内容
	 * @return
	 */
	public List<PartnerUser> appGetHotelList(AppGetHotelEntity appGetHotelList);

	/**
	 * 获取推荐宾馆
	 * 
	 * @param position_city
	 * @return
	 */
	public List<PartnerUser> appGetTuijian(String position_city, String type);

	/**
	 * 筛选（根据上下架筛选）--p_id商家id upordowntype --0 上架 1下架
	 * 
	 * @param p_id
	 * @param upordowntype
	 * @return
	 */
	public List<FoodMeal> shaixuanUporDownFoodMeal(String p_id, String upordowntype);

	/**
	 * 获取美食详情
	 * 
	 * @param m_id
	 * @return
	 */
	public FoodMeal getFoodMealXQ(String m_id);

	/**
	 * 美食查询当日是否已经设置可售
	 * 
	 * @param date
	 * @param m_id
	 * @return
	 */
	public FoodMealKeshou getTodayIsSetupFoodMeal(String date, String m_id);

	/**
	 * 美食删除当日设置
	 * 
	 * @param k_id
	 */
	public int deleteTodayFoodMealKeshous(Integer k_id);

	/**
	 * 美食添加新的可售设置
	 * 
	 * @param foodMealKeshou
	 */
	public int addFoodMealKeshous(FoodMealKeshou foodMealKeshou);

	/**
	 * 删除美食套餐
	 * 
	 * @param m_id
	 * @return
	 */
	public boolean delFoodMeal(Integer m_id);

	/**
	 * 修改美食套餐
	 * 
	 * @param foodMeal
	 * @return
	 */
	public boolean updFoodMeal(FoodMeal foodMeal);

	/**
	 * 删除美食图片
	 * 
	 * @param photo_id
	 * @return
	 */
	public boolean delFoodMealPhoto(String photo_id);

	/**
	 * 上下架娱乐项目 upordowntype 0 上架 1下架
	 * 
	 * @param happyThemeid
	 * @param upordowntype
	 * @return
	 */
	public boolean upOrDownHappyTheme(int happyThemeid, String upordowntype);

	/**
	 * 筛选（根据上下架筛选）--p_id商家id upordowntype --0 上架 1下架
	 * 
	 * @param p_id
	 * @param upordowntype
	 * @return
	 */
	public List<HappyTheme> shaixuanUporDownHappyTheme(String p_id, String upordowntype);

	/**
	 * 获取娱乐项目详情
	 * 
	 * @param t_id
	 * @return
	 */
	public HappyTheme getHappyThemeXQ(String t_id);

	/**
	 * 娱乐项目查询当日是否已经设置可售
	 * 
	 * @param date
	 * @param t_id
	 * @return
	 */
	public HappyThemeKeshou getTodayIsSetupHappyTheme(String date, String t_id);

	/**
	 * 娱乐项目删除当日设置
	 * 
	 * @param k_id
	 */
	public int deleteTodayHappyThemeKeshous(Integer k_id);

	/**
	 * 娱乐项目添加新的可售设置
	 * 
	 * @param happyThemeKeshou
	 */
	public int addHappyThemeKeshous(HappyThemeKeshou happyThemeKeshou);

	/**
	 * 修改娱乐项目
	 * 
	 * @param happyTheme
	 * @return
	 */
	public boolean updHappyTheme(HappyTheme happyTheme);

	/**
	 * 删除娱乐项目图片
	 * 
	 * @param photo_id
	 * @return
	 */
	public boolean delHappyThemePhoto(String photo_id);

	/**
	 * 查询美食列表
	 * 
	 * @param appGetFoodEntity
	 * @return
	 */
	public List<PartnerUser> appGetFoodList(AppGetFoodEntity appGetFoodEntity);

	/**
	 * 查询娱乐列表
	 * 
	 * @param appGetHappyEntity
	 * @return
	 */
	public List<PartnerUser> appGetHappyList(AppGetHappyEntity appGetHappyEntity);

}
